﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WebNext.Domain.Entities;

namespace WebNext.Domain.Interfaces
{
	public interface IEntriesRepository  : IEntitesRepository<Entry>
	{
		CultureId CultureId
		{
			get;
			set;
		}
		IEnumerable<Entry> GetAll(EntryType type);
		IEnumerable<Entry> GetAll(EntryType type, int pageNumber, int pageSize, string tag, bool publishedOnly);
		int GetAllCount(EntryType type, string tag, bool publishedOnly);

		IEnumerable<ArchiveInfo> GetArchives(EntryType type, bool publishedOnly);
		IEnumerable<Entry> GetArchiveEntries(EntryType type, int pageNumber, int pageSize, int year, int month, bool publishedOnly);
		int GetArchiveEntriesCount(EntryType type, int year, int month, bool publishedOnly);
	}
}
